File: esp8266lib.inc
      include file that has the library sub-routines and functions to use the esp8266 on the CMM2. See 'esp8266 reference.txt'
Note: use in your .bas files with #include "esp8266lib.inc"

File: esp8266var.inc
      include file that defines the variables used by sub-routines and functions in the "esp8266lib.inc" file.
Note: include in the top of your .bas files with #include "esp8266var.inc"

File: esprestart.bas
      This program will restart the esp8266 module. If your esp stops working, reset it and your program again.

File: ping.bas
      This program will ping a host and return the response in milliseconds if successful.
      *ping <IP or hostname> or run "ping.bas", <IP or hostname>

File: setupwifi.bas
      this program will set up the SSID and Password for an esp8266 module and attempt to connect to the Access Point. The existing
      configuration can be cleared, and a new one permanently saved to the esp8266 flash. 

File: terminal.bas
      A simple terminal program to serve as a programming example.

File: flashback.bas
      A fun and nostalgic terminal program with a few more features. Try to connect to some telnet BBS' out there 
      (https://www.telnetbbsguide.com/bbs/list/brief/). No terminal emulation is provided, but may be implemented in a future
      update.

File: flashback-esplib.inc
      A modified version of the "esp8266lib.inc" for use with the flashback.bas terminal program. Modifications that were made
      were mostly in the esp.input.loop routine to add clicky sounds for every byte received, and to use the prints() custom
      print routine instead of the system "print" command. flashback.bas will not work without this file.

File: getfile.bas
      This program will use connect to a server defined by SERVER_IP$ and SERVER_PORT$ in the .bas file and attempt to 
      download a file from the server. Run the python script "getfile.py" on the server (may require some modifications, 
      see getfile.py file for details)
Note: run from command line like this: run "getfile.bas", <FILENAME> or *getfile <FILENAME>

File: getfile.py
      The python-based server component that is run and waits for a connection from the CMM2 from the "getfile.bas" program.

File: server.bas
      Maybe the most interesting and useful example program. server.bas runs on the CMM2 and waits for a connection from a client
      that runs the "sendfile.py" on a PC/MAC/Linux machine. Once a connection is made, the server is told the name of a file and its
      size in bytes, and the client sends the file. server.bas saves the file and closes it once the transfer is complete.
      the client can also set a flag to tell the server to RUN the file it is sending once the transfer is complete.
      If the .bas file you are sending exists with the command run "server.bas", and it has the run flag set, it will launch the 
      server again once it completes and this allows a very nice development workflow. I currently have the sendfile.py configured
      as a macro in Notepad++ on the PC and can edit a .bas file, save it, then send it over with or without the RUN flag.
Note: Set the variable SERVER_PORT$ in the server.bas file to define the port to use and make sure it is also set in server,py
      If the RUNFLAG is set and the transferred file is run, it is first copied to a file called testrun.bas and then 
      that file is run.

File: sendfile.py
      the complement to "server.bas" that is the python-based client program used to connect to the CMM2's "server.bas" and send a file.
      sendfile.py expects 2 arguments on the command line, sendfile.py <RUNFLAG> <FILENAME>
      <RUNFLAG> can be 0 (server DOES NOT run the file after transfer) or 1 (server DOES run the file after transfer)
      <FILENAME> should include the complete path of the file so the script can find it/read it. the pathname will be removed and
      only the filename will be sent to the server, and the file will be saved under this name after it is transferred.
